RUNTIME AVIF METAL

Runtime local usado na conversao JPEG SDR e HEIC/HEIF HDR:

- libaom 3.13.1 com cache HOG Metal para planos de 8 e 10 bits;
- metal_yuv420 para preparar JPEG SDR na GPU e limitar cada encoder AV1 a uma thread;
- libavif 1.4.2;
- avifgainmaputil com headroom explicito e modo servidor persistente para o
  fallback HDR legado;
- importar_gainmap_apple, mantido apenas para reproducao historica/experimental;
- transcodificar_avif_imageio, que preserva o gain map auxiliar Apple nativo.

HEIC/HEIF HDR com gain map Apple usa o ImageIO do macOS para transcodificar
diretamente HEIC->AVIF. O mapa auxiliar e preservado sem conversao de curva nem
compensacao fixa. Na qualidade padrao 50, SDR usa qualidade efetiva 40 e HDR
ImageIO usa 0,25. Em tres HEICs, o delta global do Quick Look ficou entre
+0,027 e +0,051, e a economia entre 78,41% e 79,89%.

JPEGs elegiveis usam o libavif 1.3 tradicional com o libaom Metal injetado,
preservando qualidade, speed e EXIF. Arquivos com orientacao, perfil ICC,
transparencia, dimensoes impares ou outro caso nao coberto voltam ao Pillow.

O perfil termico usa ate 10 trabalhadores em lotes pequenos, 6 a partir de
100 arquivos e 4 a partir de 500. A rota ImageIO nao inicia o antigo pool
de gain maps quando todas as fontes ja expoem o mapa Apple; a deteccao fica em
cache durante o lote. Outros HDRs usam no maximo 8 trabalhadores e respeitam os
mesmos limites. Qualquer falha aciona automaticamente o caminho tradicional.

Os relatorios e as decisoes reproduziveis da fase experimental ficam em:

  codigo/documentacao/historico-prototipo/libaom-metal/

As copias volumosas das fontes de terceiros e os binarios intermediarios foram
removidos com a pasta de prototipo depois da integracao. O runtime aprovado
acima e autocontido para o uso normal do conversor.

Para desativar temporariamente a aceleracao:

  CONVERSOR_AVIF_METAL=0
